package com.atguigu.lease.web.admin.service;

import com.atguigu.lease.model.entity.ApartmentInfo;
import com.atguigu.lease.model.enums.ReleaseStatus;
import com.atguigu.lease.web.admin.vo.apartment.ApartmentDetailVo;
import com.atguigu.lease.web.admin.vo.apartment.ApartmentItemVo;
import com.atguigu.lease.web.admin.vo.apartment.ApartmentQueryDto;
import com.atguigu.lease.web.admin.vo.apartment.ApartmentSubmitDto;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
* @author gqs
* @description 针对表【apartment_info(公寓信息表)】的数据库操作Service
* @createDate 2023-07-24 15:48:00
*/
public interface ApartmentInfoService extends IService<ApartmentInfo> {

    boolean saveOrUpdateApartmentInfo(ApartmentSubmitDto apartmentSubmitDto);

    IPage<ApartmentItemVo> pageApartmentItemByQuery(IPage<ApartmentItemVo> page, ApartmentQueryDto queryVo);

    ApartmentDetailVo getApartmentDetailById(Long id);

    boolean removeApartmentById(Long id);

    boolean updateReleaseStatusById(Long id, ReleaseStatus status);

    List<ApartmentInfo> listInfoByDistrictId(Long id);
}
